<!DOCTYPE html>
<html>
<head>
  <meta charset="utf-8">
  
  
  <title>Hexo</title>
  <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
  <meta name="description" content="中科达习题">
<meta property="og:type" content="article">
<meta property="og:title" content="Hexo">
<meta property="og:url" content="https://renshengdian.gitee.io/renshengdian/2021/12/02/%E4%B8%AD%E7%A7%91%E8%BE%BE/index.html">
<meta property="og:site_name" content="Hexo">
<meta property="og:description" content="中科达习题">
<meta property="og:locale" content="en_US">
<meta property="article:published_time" content="2021-12-02T14:24:56.148Z">
<meta property="article:modified_time" content="2021-12-02T14:38:33.574Z">
<meta property="article:author" content="John Doe">
<meta name="twitter:card" content="summary">
  
    <link rel="alternate" href="/renshengdian/atom.xml" title="Hexo" type="application/atom+xml">
  
  
    <link rel="shortcut icon" href="/renshengdian/favicon.png">
  
  
    
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/typeface-source-code-pro@0.0.71/index.min.css">

  
  
<link rel="stylesheet" href="/renshengdian/css/style.css">

  
    
<link rel="stylesheet" href="/renshengdian/fancybox/jquery.fancybox.min.css">

  
<meta name="generator" content="Hexo 5.4.0"></head>

<body>
  <div id="container">
    <div id="wrap">
      <header id="header">
  <div id="banner"></div>
  <div id="header-outer" class="outer">
    <div id="header-title" class="inner">
      <h1 id="logo-wrap">
        <a href="/renshengdian/" id="logo">Hexo</a>
      </h1>
      
    </div>
    <div id="header-inner" class="inner">
      <nav id="main-nav">
        <a id="main-nav-toggle" class="nav-icon"></a>
        
          <a class="main-nav-link" href="/renshengdian/">Home</a>
        
          <a class="main-nav-link" href="/renshengdian/archives">Archives</a>
        
      </nav>
      <nav id="sub-nav">
        
          <a id="nav-rss-link" class="nav-icon" href="/renshengdian/atom.xml" title="RSS Feed"></a>
        
        <a id="nav-search-btn" class="nav-icon" title="Search"></a>
      </nav>
      <div id="search-form-wrap">
        <form action="//google.com/search" method="get" accept-charset="UTF-8" class="search-form"><input type="search" name="q" class="search-form-input" placeholder="Search"><button type="submit" class="search-form-submit">&#xF002;</button><input type="hidden" name="sitesearch" value="https://renshengdian.gitee.io/renshengdian"></form>
      </div>
    </div>
  </div>
</header>

      <div class="outer">
        <section id="main"><article id="post-中科达" class="h-entry article article-type-post" itemprop="blogPost" itemscope itemtype="https://schema.org/BlogPosting">
  <div class="article-meta">
    <a href="/renshengdian/2021/12/02/%E4%B8%AD%E7%A7%91%E8%BE%BE/" class="article-date">
  <time class="dt-published" datetime="2021-12-02T14:24:56.148Z" itemprop="datePublished">2021-12-02</time>
</a>
    
  </div>
  <div class="article-inner">
    
    
    <div class="e-content article-entry" itemprop="articleBody">
      
        <h1 id="中科达习题"><a href="#中科达习题" class="headerlink" title="中科达习题"></a>中科达习题</h1><span id="more"></span>

<h2 id="一（C语言）“堆”和“栈”的区别？从程序内存和数据结构两方面讨论"><a href="#一（C语言）“堆”和“栈”的区别？从程序内存和数据结构两方面讨论" class="headerlink" title="一（C语言）“堆”和“栈”的区别？从程序内存和数据结构两方面讨论"></a>一（C语言）“堆”和“栈”的区别？从程序内存和数据结构两方面讨论</h2><p>答<em><strong>*：*</strong></em>            <em><strong>*数据结构的栈和堆*</strong></em></p>
<p>  堆和栈都是一种数据项按序排列的数据结构</p>
<p><em><strong>*栈就像装数据的桶或箱子*</strong></em><br> 它是一种具有后进先出性质的数据结构，也就是说后存放的先取，先存放的后取。这就如同我们要取出放在箱子里面底下的东西（放入的比较早的物体），我们首先要移开压在它上面的物体（放入的比较晚的物体）。</p>
<p><em><strong>*堆像一棵倒过来的树*</strong></em></p>
<p>堆是一种经过排序的树形数据结构，每个结点都有一个值。通常我们所说的堆的数据结构，是指二叉堆。堆的特点是根结点的值最小（或最大），且根结点的两个子树也是一个堆。由于堆的这个特性，常用来实现优先队列，堆的存取是随意，这就如同我们在图书馆的书架上取书，虽然书的摆放是有顺序的，但是我们想取任意一本时不必像栈一样，先取出前面所有的书，书架这种机制不同于箱子，我们可以直接取出我们想要的书</p>
<p><em><strong>*内存分配中的栈和堆*</strong></em></p>
<p>内存中的栈区处于相对较高的地址以地址的增长方向为上的话，栈地址是向下增长的。<br>栈中分配局部变量空间，堆区是向上增长的用于分配程序员申请的内存空间。另外还有静态区是分配静态变量，全局变量空间的；只读区是分配常量和程序代码空间的；以及其他一些分区。</p>
<p>堆和栈的第一个区别就是申请方式不同：栈（英文名称是stack）是系统自动分配空间的，例如我们定义一个 char a；系统会自动在栈上为其开辟空间。而堆（英文名称是heap）则是程序员根据需要自己申请的空间，例如malloc（10）；开辟十个字节的空间。由于栈上的空间是自动分配自动回收的，所以栈上的数据的生存周期只是在函数的运行过程中，运行后就释放掉，不可以再访问。而堆上的数据只要程序员不释放空间，就一直可以访问到，不过缺点是一旦忘记释放会造成内存泄露。</p>
<p><em><strong>*申请后系统的响应*</strong></em></p>
<p>栈：只要栈的剩余空间大于所申请空间，系统将为程序提供内存，否则将报异常提示栈溢出。</p>
<p>堆：首先应该知道操作系统有一个记录空闲内存地址的链表，当系统收到程序的申请时，会遍历该链表，寻找第一个空间大于所申请空间的堆结点，然后将该结点从空闲结点链表中删除，并将该结点的空间分配给程序，另外，对于大多数系统，会在这块内存空间中的首地址处记录本次分配的大小，这样，代码中的 delete语句才能正确的释放本内存空间。另外，由于找到的堆结点的大小不一定正好等于申请的大小，系统会自动的将多余的那部分重新放入空闲链表中。也就是说堆会在申请后还要做一些后续的工作这就会引出申请效率的问题。</p>
<p><em><strong>*申请效率的比较*</strong></em></p>
<p>栈：由系统自动分配，速度较快。但程序员是无法控制的。<br> 堆：是由malloc/new分配的内存，一般速度比较慢，而且容易产生内存碎片,不过用起来最方便。 </p>
<h2 id="二-String-s-new-String-“xyz”-创建了几个字符串对象？"><a href="#二-String-s-new-String-“xyz”-创建了几个字符串对象？" class="headerlink" title="二 String s = new String(“xyz”);创建了几个字符串对象？"></a>二 String s = new String(“xyz”);创建了几个字符串对象？</h2><p>答：2两个</p>
<h2 id="三、-（编程）数组和链表的区别？"><a href="#三、-（编程）数组和链表的区别？" class="headerlink" title="三、 （编程）数组和链表的区别？"></a><strong>三、</strong> （编程）数组和链表的区别？</h2><p>链表是一种上一个元素的引用指向下一个元素的存储结构，链表通过指针来连接元素与元素；链表是线性表的一种，所谓的线性表包含顺序线性表和链表，顺序线性表是用数组实现的，在内存中有顺序排列，通过改变数组大小实现。而链表不是用顺序实现的，用指针实现，在内存中不连续。</p>
<p>数组是指有序的元素序列。如果将有限个类型相同的变量的集合命名，那么这个名称就是数组名，而组成数组的各个变量称为数组的分量，也称为数组的元素，有时也称为下标变量</p>
<p>数组和链表的区别？</p>
<p>不同：链表是链式的存储结构；数组是顺序的存储结构。</p>
<p>链表通过指针来连接元素与元素，数组则是把所有元素按次序依次存储。链表的插入删除元素相对数组较为简单，不需要移动元素，且较为容易实现长度扩充，但是寻找某个元素较为困难；数组寻找某个元素较为简单，但插入与删除比较复杂，由于最大长度需要再编程一开始时指定，故当达到最大长度时，扩充长度不如链表方便。</p>
<p>相同：两种结构均可实现数据的顺序存储，构造出来的模型呈线性结构。</p>
<h2 id="四、（编程）实现一个冒泡法排序的函数"><a href="#四、（编程）实现一个冒泡法排序的函数" class="headerlink" title="四、（编程）实现一个冒泡法排序的函数"></a>四、（编程）实现一个冒泡法排序的函数</h2><figure class="highlight java"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br><span class="line">7</span><br><span class="line">8</span><br><span class="line">9</span><br><span class="line">10</span><br><span class="line">11</span><br><span class="line">12</span><br><span class="line">13</span><br><span class="line">14</span><br><span class="line">15</span><br><span class="line">16</span><br><span class="line">17</span><br></pre></td><td class="code"><pre><span class="line"><span class="meta">@Test</span></span><br><span class="line"><span class="function"><span class="keyword">public</span> <span class="keyword">void</span>  <span class="title">test</span><span class="params">()</span></span>&#123;</span><br><span class="line">        <span class="keyword">int</span> temp;</span><br><span class="line">        <span class="keyword">int</span> [] arry = &#123;<span class="number">3</span>,<span class="number">5</span>,<span class="number">1</span>,-<span class="number">7</span>,<span class="number">4</span>,<span class="number">9</span>,-<span class="number">6</span>,<span class="number">8</span>,<span class="number">10</span>,<span class="number">4</span>&#125;;</span><br><span class="line">        <span class="keyword">for</span>(<span class="keyword">int</span> i = <span class="number">0</span>; i&lt; arry.length-<span class="number">1</span>;i++)&#123;</span><br><span class="line">            <span class="keyword">for</span> (<span class="keyword">int</span> j = <span class="number">0</span>; j &lt; arry.length-<span class="number">1</span>; j++)&#123;</span><br><span class="line">                <span class="keyword">if</span>(arry[j] &gt; arry[j+<span class="number">1</span>])&#123;</span><br><span class="line">                    temp = arry[j+<span class="number">1</span>];</span><br><span class="line">                    arry[j+<span class="number">1</span>] = arry[j];</span><br><span class="line">                    arry[j] = temp;</span><br><span class="line">                &#125;</span><br><span class="line">            &#125;</span><br><span class="line">        &#125;</span><br><span class="line">    <span class="keyword">for</span>(<span class="keyword">int</span> j:arry) &#123;</span><br><span class="line">        System.out.print(j + <span class="string">&quot;,&quot;</span>);</span><br><span class="line">         &#125;</span><br><span class="line">    &#125;</span><br></pre></td></tr></table></figure>

<h2 id="五、-（操作系统）进程和线程的区别；什么是线程死锁，举个例子？"><a href="#五、-（操作系统）进程和线程的区别；什么是线程死锁，举个例子？" class="headerlink" title="五、 （操作系统）进程和线程的区别；什么是线程死锁，举个例子？"></a><strong>五、</strong> <strong>（操作系统）进程和线程的区别；什么是线程死锁，举个例子？</strong></h2><p>进程：指在系统中正在运行的一个应用程序；程序一旦运行就是进程；或者更专业化来说：进程是指程序执行时的一个实例，即它是程序已经执行到课中程度的数据结构的汇集。从内核的观点看，进程的目的就是担当分配系统资源（CPU时间、内存等）的基本单位。</p>
<p>线程：系统分配处理器时间资源的基本单元，或者说进程之内独立执行的一个单元执行流。进程——资源分配的最小单位，线程——程序执行的最小单位</p>
<p><strong>线程进程的区别体现在4个方面：</strong></p>
<p>1、因为进程拥有独立的堆栈空间和数据段，所以每当启动一个新的进程必须分配给它独立的地址空间，建立众多的数据表来维护它的代码段、堆栈段和数据段，这对于多进程来说十分“奢侈”，系统开销比较大，而线程不一样，线程拥有独立的堆栈空间，但是共享数据段，它们彼此之间使用相同的地址空间，共享大部分数据，比进程更节俭，开销比较小，切换速度也比进程快，效率高，但是正由于进程之间独立的特点，使得进程安全性比较高，也因为进程有独立的地址空间，一个进程崩溃后，在保护模式下不会对其它进程产生影响，而线程只是一个进程中的不同执行路径。一个线程死掉就等于整个进程死掉。</p>
<p>2、体现在通信机制上面，正因为进程之间互不干扰，相互独立，进程的通信机制相对很复杂，譬如管道，信号，消息队列，共享内存，套接字等通信机制，而线程由于共享数据段所以通信机制很方便。。</p>
<p>3、体现在CPU系统上面，线程使得CPU系统更加有效，因为操作系统会保证当线程数不大于CPU数目时，不同的线程运行于不同的CPU上。</p>
<p>4、体现在程序结构上，举一个简明易懂的列子：当我们使用进程的时候，我们不自主的使用if else嵌套来判断pid，使得程序结构繁琐，但是当我们使用线程的时候，基本上可以甩掉它，当然程序内部执行功能单元需要使用的时候还是要使用，所以线程对程序结构的改善有很大帮助</p>
<p>死锁概述</p>
<p>线程死锁是指两个或两个以上的线程互相持有对方所需要的资源，由于synchronized的特性，一个线程持有一个资源，或者说获得一个锁，在该线程释放这个锁之前，其它线程是获取不到这个锁的，而且会一直死等下去，因此这便造成了死锁。</p>
<p>死锁产生的条件</p>
<p>互斥条件：一个资源，或者说一个锁只能被一个线程所占用，当一个线程首先获取到这个锁之后，在该线程释放这个锁之前，其它线程均是无法获取到这个锁的。</p>
<p>占有且等待：一个线程已经获取到一个锁，再获取另一个锁的过程中，即使获取不到也不会释放已经获得的锁。</p>
<p>不可剥夺条件：任何一个线程都无法强制获取别的线程已经占有的锁</p>
<p>循环等待条件：线程A拿着线程B的锁，线程B拿着线程A的锁。</p>
<p>死锁案例</p>
<p>有两条道路双向两个车道，即每条路每个方向只有一个车道，两条道路十字交叉。假设车辆只能向前直行，而不允许转弯和后退。如果有4辆车几乎同时到达这个十字路口；相互交叉地停下来，，此时4辆车都将不能继续向前，这是一个典型的死锁问题</p>
<h2 id="六、（Web）Cookie和Session的区别？"><a href="#六、（Web）Cookie和Session的区别？" class="headerlink" title="六、（Web）Cookie和Session的区别？"></a>六、（Web）Cookie和Session的区别？</h2><p><em><strong>*cookie 和session的区别是：*</strong></em></p>
<p>数据存放位置不同：cookie数据保存在客户端，session数据保存在服务器端。</p>
<p>安全程度不同：cookie不是很安全，别人可以分析存放在本地的COOKIE并进行COOKIE欺骗,考虑到安全应当使用session。</p>
<p>性能使用程度：session会在一定时间内保存在服务器上。当访问增多，会比较占用你服务器的性能,考虑到减轻服务器性能方面，应当使用cookie</p>
<p>数据存储大小不同：单个cookie保存的数据不能超过4K，很多浏览器都限制一个站点最多保存20个cookie，而session则存储与服务端，浏览器对其没有限制。</p>
<p>会话机制不同：session会话机制：session会话机制是一种服务器端机制，它使用类似于哈希表（可能还有哈希表）的结构来保存信息。</p>
<p>cookies会话机制：cookie是服务器存储在本地计算机上的小块文本，并随每个请求发送到同一服务器。 Web服务器使用HTTP标头将cookie发送到客户端。在客户端终端，浏览器解析cookie并将其保存为本地文件，该文件自动将来自同一服务器的任何请求绑定到这些cookie。</p>
<p>简单来说Session是在服务端保存的一个数据结构，用来跟踪用户的状态，这个数据可以保存在集群、数据库、文件中；Cookie是客户端保存用户信息的一种机制，用来记录用户的一些信息，也是实现Session的一种方式。</p>
<h2 id="七、-（网络）计算机中的端口共有多少个？举例常用端口"><a href="#七、-（网络）计算机中的端口共有多少个？举例常用端口" class="headerlink" title="七、 （网络）计算机中的端口共有多少个？举例常用端口"></a>七、 （网络）计算机中的端口共有多少个？举例常用端口</h2><p>一共有65535个 。常用的有8080端口、端口：21、端口：22、端口：23、端口：25、端口：80、端口：102、）端口：109、端口：110、端口：119、端口：135、端口：137、138、139、端口：161</p>
<p>1、8080端口</p>
<p>服务：HTTP</p>
<p>说明：为http服务的备用端口</p>
<p>2、端口：21</p>
<p>服务：FTP</p>
<p>说明：FTP服务器所开放的端口，用于上传、下载。</p>
<p>3、端口：22</p>
<p>服务：SSH；</p>
<p>4、端口：23</p>
<p>服务：Telnet；</p>
<p>5、端口：25</p>
<p>服务：SMTP；</p>
<p>说明：SMTP服务器所开放的端口，用于发送邮件。</p>
<p>6、端口：80</p>
<p>服务：HTTP</p>
<p>说明：用于网页浏览。</p>
<p>7、端口：102</p>
<p>服务：Message transfer agent(MTA)-X.400 over TCP/IP</p>
<p>说明：消息传输代理。</p>
<p>8、端口：109</p>
<p>服务：Post Office Protocol -Version3</p>
<p>说明：POP3服务器开放此端口，用于接收邮件，客户端访问服务器端的邮件服务。</p>
<p>9、端口：110</p>
<p>服务：SUN公司的RPC服务所有端口</p>
<p>说明：常见RPC服务有rpc.mountd、NFS、rpc.statd、rpc.csmd、rpc.ttybd、amd等</p>
<p>其他：POP3协议默认端口也是110</p>
<p>10、端口：119</p>
<p>服务：Network News Transfer Protocol</p>
<p>说明：NEWS新闻组传输协议，承载USENET通信。这个端口的连接通常是人们在寻找USENET服务器。多数ISP限制，只有他们的客户才能访问他们的新闻组服务器。打开新闻组服务器将允许发/读任何人的帖子，访问被限制的新闻组服务器，匿名发帖或发送SPAM。</p>
<p>11、端口：135</p>
<p>服务：Location Service</p>
<p>说明：Microsoft在这个端口运行DCE RPC end-point mapper为它的DCOM服务。</p>
<p>12、端口：137、138、139</p>
<p>服务：NETBIOS Name Service</p>
<p>说明：其中137、138常被用于UDP连接，当通过网上邻居传输文件时用这个端口。而139端口：通过这个端口进入的连接试图获得NetBIOS/SMB服务。这个协议被用于windows文件和打印机共享和SAMBA。还有WINS Regisrtation也用它。</p>
<p>13、端口：161</p>
<p>服务：SNMP</p>
<p>说明：SNMP允许远程管理设备。</p>
<p>21/tcp FTP 文件传输协议<br>22/tcp SSH 安全登录、文件传送(SCP)和端口重定向<br>23/tcp Telnet 不安全的文本传送<br>25/tcp SMTP Simple Mail Transfer Protocol (E-mail)<br>69/udp TFTP Trivial File Transfer Protocol<br>79/tcp finger Finger<br>80/tcp HTTP 超文本传送协议 (WWW)<br>88/tcp Kerberos Authenticating agent<br>110/tcp POP3 Post Office Protocol (E-mail)<br>113/tcp ident old identification server system<br>119/tcp NNTP used for usenet newsgroups<br>220/tcp IMAP3<br>443/tcp HTTPS used for securely transferring web pages</p>
<p>端口：0<br>服务：Reserved<br>说明：通常用于分析操作系统。这一方法能够工作是因为在一些系统中“0”是无效端口，当你试图使用通常的闭合端口连接它时将产生不同的结果。一种典型的扫描，使用IP地址为0.0.0.0，设置ACK位并在以太网层广播。</p>
<p>端口：1<br>服务：tcpmux<br>说明：这显示有人在寻找SGI Irix机器。Irix是实现tcpmux的主要提供者，默认情况下tcpmux在这种系统中被打开。Irix机器在发布是含有几个默认的无密码的帐户，如：IP、GUEST UUCP、NUUCP、DEMOS 、TUTOR、DIAG、OUTOFBOX等。许多管理员在安装后忘记删除这些帐户。因此HACKER在INTERNET上搜索tcpmux并利用这些帐户。</p>
<p>端口：7<br>服务：Echo<br>说明：能看到许多人搜索Fraggle放大器时，发送到X.X.X.0和X.X.X.255的信息。</p>
<p>端口：19<br>服务：Character Generator<br>说明：这是一种仅仅发送字符的服务。UDP版本将会在收到UDP包后回应含有垃圾字符的包。TCP连接时会发送含有垃圾字符的数据流直到连接关闭。HACKER利用IP欺骗可以发动DoS攻击。伪造两个chargen服务器之间的UDP包。同样Fraggle DoS攻击向目标地址的这个端口广播一个带有伪造受害者IP的数据包，受害者为了回应这些数据而过载。</p>
<p>端口：21<br>服务：FTP<br>说明：FTP服务器所开放的端口，用于上传、下载。最常见的攻击者用于寻找打开anonymous的FTP服务器的方法。这些服务器带有可读写的目录。木马Doly Trojan、Fore、Invisible FTP、WebEx、WinCrash和Blade Runner所开放的端口。</p>
<p>端口：22<br>服务：Ssh<br>说明：PcAnywhere建立的TCP和这一端口的连接可能是为了寻找ssh。这一服务有许多弱点，如果配置成特定的模式，许多使用RSAREF库的版本就会有不少的漏洞存在。</p>
<p>端口：23<br>服务：Telnet<br>说明：远程登录，入侵者在搜索远程登录UNIX的服务。大多数情况下扫描这一端口是为了找到机器运行的操作系统。还有使用其他技术，入侵者也会找到密码。木马Tiny Telnet Server就开放这个端口。</p>
<p>端口：25<br>服务：SMTP<br>说明：SMTP服务器所开放的端口，用于发送邮件。入侵者寻找SMTP服务器是为了传递他们的SPAM。入侵者的帐户被关闭，他们需要连接到高带宽的E-MAIL服务器上，将简单的信息传递到不同的地址。木马Antigen、Email Password Sender、Haebu Coceda、Shtrilitz Stealth、WinPC、WinSpy都开放这个端口。</p>
<p>端口：31<br>服务：MSG Authentication<br>说明：木马Master Paradise、Hackers Paradise开放此端口。</p>
<p>端口：42<br>服务：WINS Replication<br>说明：WINS复制</p>
<p>端口：53<br>服务：Domain Name Server（DNS）<br>说明：DNS服务器所开放的端口，入侵者可能是试图进行区域传递（TCP），欺骗DNS（UDP）或隐藏其他的通信。因此防火墙常常过滤或记录此端口。</p>
<p>端口：67<br>服务：Bootstrap Protocol Server<br>说明：通过DSL和Cable modem的防火墙常会看见大量发送到广播地址255.255.255.255的数据。这些机器在向DHCP服务器请求一个地址。HACKER常进入它们，分配一个地址把自己作为局部路由器而发起大量中间人（man-in-middle）攻击。客户端向68端口广播请求配置，服务器向67端口广播回应请求。这种回应使用广播是因为客户端还不知道可以发送的IP地址。</p>
<p>端口：69<br>服务：Trival File Transfer<br>说明：许多服务器与bootp一起提供这项服务，便于从系统下载启动代码。但是它们常常由于错误配置而使入侵者能从系统中窃取任何 文件。它们也可用于系统写入文件。</p>
<p>端口：79<br>服务：Finger Server<br>说明：入侵者用于获得用户信息，查询操作系统，探测已知的缓冲区溢出错误，回应从自己机器到其他机器Finger扫描。</p>
<p>端口：80<br>服务：HTTP<br>说明：用于网页浏览。木马Executor开放此端口。</p>
<p>端口：99<br>服务：gram Relay<br>说明：后门程序ncx99开放此端口。</p>
<p>端口：102<br>服务：Message transfer agent(MTA)-X.400 over TCP/IP<br>说明：消息传输代理。</p>
<p>端口：109<br>服务：Post Office Protocol -Version3<br>说明：POP3服务器开放此端口，用于接收邮件，客户端访问服务器端的邮件服务。POP3服务有许多公认的弱点。关于用户名和密码交 换缓冲区溢出的弱点至少有20个，这意味着入侵者可以在真正登陆前进入系统。成功登陆后还有其他缓冲区溢出错误。</p>
<p>端口：110<br>服务：SUN公司的RPC服务所有端口<br>说明：常见RPC服务有rpc.mountd、NFS、rpc.statd、rpc.csmd、rpc.ttybd、amd等</p>
<p>端口：113<br>服务：Authentication Service<br>说明：这是一个许多计算机上运行的协议，用于鉴别TCP连接的用户。使用标准的这种服务可以获得许多计算机的信息。但是它可作为许多服务的记录器，尤其是FTP、POP、IMAP、SMTP和IRC等服务。通常如果有许多客户通过防火墙访问这些服务，将会看到许多这个端口的连接请求。记住，如果阻断这个端口客户端会感觉到在防火墙另一边与E-MAIL服务器的缓慢连接。许多防火墙支持TCP连接的阻断过程中发回RST。这将会停止缓慢的连接。</p>
<p>端口：119<br>服务：Network News Transfer Protocol<br>说明：NEWS新闻组传输协议，承载USENET通信。这个端口的连接通常是人们在寻找USENET服务器。多数ISP限制，只有他们的客户才能访问他们的新闻组服务器。打开新闻组服务器将允许发/读任何人的帖子，访问被限制的新闻组服务器，匿名发帖或发送SPAM。</p>
<p>端口：135<br>服务：Location Service<br>说明：Microsoft在这个端口运行DCE RPC end-point mapper为它的DCOM服务。这与UNIX 111端口的功能很相似。使用DCOM和RPC的服务利用计算机上的end-point mapper注册它们的位置。远端客户连接到计算机时，它们查找end-point mapper找到服务的位置。HACKER扫描计算机的这个端口是为了找到这个计算机上运行Exchange Server吗？什么版本？还有些DOS攻击直接针对这个端口。</p>
<p>端口：137、138、139<br>服务：NETBIOS Name Service<br>说明：其中137、138是UDP端口，当通过网上邻居传输文件时用这个端口。而139端口：通过这个端口进入的连接试图获得NetBIOS/SMB服务。这个协议被用于windows文件和打印机共享和SAMBA。还有WINS Regisrtation也用它。</p>
<p>端口：143<br>服务：Interim Mail Access Protocol v2<br>说明：和POP3的安全问题一样，许多IMAP服务器存在有缓冲区溢出漏洞。记住：一种LINUX蠕虫（admv0rm）会通过这个端口繁殖，因此许多这个端口的扫描来自不知情的已经被感染的用户。当REDHAT在他们的LINUX发布版本中默认允许IMAP后，这些漏洞变的很流行。这一端口还被用于IMAP2，但并不流行。</p>
<p>端口：161<br>服务：SNMP<br>说明：SNMP允许远程管理设备。所有配置和运行信息的储存在数据库中，通过SNMP可获得这些信息。许多管理员的错误配置将被暴露在Internet。Cackers将试图使用默认的密码public、private访问系统。他们可能会试验所有可能的组合。SNMP包可能会被错误的指向用户的网络。</p>
<p>端口：177<br>服务：X Display Manager Control Protocol<br>说明：许多入侵者通过它访问X-windows操作台，它同时需要打开6000端口。</p>
<p>端口：389<br>服务：LDAP、ILS<br>说明：轻型目录访问协议和NetMeeting Internet Locator Server共用这一端口。</p>
<p>端口：443<br>服务：Https<br>说明：网页浏览端口，能提供加密和通过安全端口传输的另一种HTTP。</p>
<p>端口：456<br>服务：[NULL]<br>说明：木马HACKERS PARADISE开放此端口。</p>
<p>端口：513<br>服务：Login,remote login<br>说明：是从使用cable modem或DSL登陆到子网中的UNIX计算机发出的广播。这些人为入侵者进入他们的系统提供了信息。</p>
<p>端口：544<br>服务：[NULL]<br>说明：kerberos kshell</p>
<p>端口：548<br>服务：Macintosh,File Services(AFP/IP)<br>说明：Macintosh,文件服务。</p>
<p>端口：553<br>服务：CORBA IIOP （UDP）<br>说明：使用cable modem、DSL或VLAN将会看到这个端口的广播。CORBA是一种面向对象的RPC系统。入侵者可以利用这些信息进入系统。</p>
<p>端口：555<br>服务：DSF<br>说明：木马PhAse1.0、Stealth Spy、IniKiller开放此端口。</p>
<p>端口：568<br>服务：Membership DPA<br>说明：成员资格 DPA。</p>
<p>端口：569<br>服务：Membership MSN<br>说明：成员资格 MSN。</p>
<p>端口：635<br>服务：mountd<br>说明：Linux的mountd Bug。这是扫描的一个流行BUG。大多数对这个端口的扫描是基于UDP的，但是基于TCP的mountd有所增加（mountd同时运行于两个端口）。记住mountd可运行于任何端口（到底是哪个端口，需要在端口111做portmap查询），只是Linux默认端口是635，就像NFS通常运行于2049端口。</p>
<p>端口：636<br>服务：LDAP<br>说明：SSL（Secure Sockets layer）</p>
<p>端口：666<br>服务：Doom Id Software<br>说明：木马Attack FTP、Satanz Backdoor开放此端口</p>
<p>端口：993<br>服务：IMAP<br>说明：SSL（Secure Sockets layer）</p>
<p>端口：1001、1011<br>服务：[NULL]<br>说明：木马Silencer、WebEx开放1001端口。木马Doly Trojan开放1011端口。</p>
<p>端口：1024<br>服务：Reserved<br>说明：它是动态端口的开始，许多程序并不在乎用哪个端口连接网络，它们请求系统为它们分配下一个闲置端口。基于这一点分配从端口1024开始。这就是说第一个向系统发出请求的会分配到1024端口。你可以重启机器，打开Telnet，再打开一个窗口运行natstat -a 将会看到Telnet被分配1024端口。还有SQL session也用此端口和5000端口。</p>
<p>端口：1025、1033<br>服务：1025：network blackjack 1033：[NULL]<br>说明：木马netspy开放这2个端口。</p>
<p>端口：1080<br>服务：SOCKS<br>说明：这一协议以通道方式穿过防火墙，允许防火墙后面的人通过一个IP地址访问INTERNET。理论上它应该只允许内部的通信向外到达INTERNET。但是由于错误的配置，它会允许位于防火墙外部的攻击穿过防火墙。WinGate常会发生这种错误，在加入IRC聊天室时常会看到这种情况。</p>
<p>端口：1170<br>服务：[NULL]<br>说明：木马Streaming Audio Trojan、Psyber Stream Server、Voice开放此端口。</p>
<p>端口：1234、1243、6711、6776<br>服务：[NULL]<br>说明：木马SubSeven2.0、Ultors Trojan开放1234、6776端口。木马SubSeven1.0/1.9开放1243、6711、6776端口。</p>
<p>端口：1245<br>服务：[NULL]<br>说明：木马Vodoo开放此端口。</p>
<p>端口：1433<br>服务：SQL<br>说明：Microsoft的SQL服务开放的端口。</p>
<p>端口：1492<br>服务：stone-design-1<br>说明：木马FTP99CMP开放此端口。</p>
<p>端口：1500<br>服务：RPC client fixed port session queries<br>说明：RPC客户固定端口会话查询</p>
<p>端口：1503<br>服务：NetMeeting T.120<br>说明：NetMeeting T.120</p>
<p>端口：1524<br>服务：ingress<br>说明：许多攻击脚本将安装一个后门SHELL于这个端口，尤其是针对SUN系统中Sendmail和RPC服务漏洞的脚本。如果刚安装了防火墙就看到在这个端口上的连接企图，很可能是上述原因。可以试试Telnet到用户的计算机上的这个端口，看看它是否会给你一个SHELL。连接到600/pcserver也存在这个问题。</p>
<p>端口：1600<br>服务：issd<br>说明：木马Shivka-Burka开放此端口。</p>
<p>端口：1720<br>服务：NetMeeting<br>说明：NetMeeting H.233 call Setup。</p>
<p>端口：1731<br>服务：NetMeeting Audio Call Control<br>说明：NetMeeting音频调用控制。</p>
<p>端口：1807<br>服务：[NULL]<br>说明：木马SpySender开放此端口。</p>
<p>端口：1981<br>服务：[NULL]<br>说明：木马ShockRave开放此端口。</p>
<p>端口：1999<br>服务：cisco identification port<br>说明：木马BackDoor开放此端口。</p>
<p>端口：2000<br>服务：[NULL]<br>说明：木马GirlFriend 1.3、Millenium 1.0开放此端口。</p>
<p>端口：2001<br>服务：[NULL]<br>说明：木马Millenium 1.0、Trojan Cow开放此端口。</p>
<p>端口：2023<br>服务：xinuexpansion 4<br>说明：木马Pass Ripper开放此端口。</p>
<p>端口：2049<br>服务：NFS<br>说明：NFS程序常运行于这个端口。通常需要访问Portmapper查询这个服务运行于哪个端口。</p>
<p>端口：2115<br>服务：[NULL]<br>说明：木马Bugs开放此端口。</p>
<p>端口：2140、3150<br>服务：[NULL]<br>说明：木马Deep Throat 1.0/3.0开放此端口。</p>
<p>端口：2500<br>服务：RPC client using a fixed port session replication<br>说明：应用固定端口会话复制的RPC客户</p>
<h2 id="八（网络）如果一台-PC-机不能上网，那么你会怎么解决呢"><a href="#八（网络）如果一台-PC-机不能上网，那么你会怎么解决呢" class="headerlink" title="八（网络）如果一台 PC 机不能上网，那么你会怎么解决呢"></a>八（网络）如果一台 PC 机不能上网，那么你会怎么解决呢</h2><p><em><strong>*方法1：查看硬件介质是否有问题*</strong></em></p>
<p>  查看网卡接口和交换机接口的灯是否亮的，还有网络用测线仪检测一下 如果灯不亮的话，进行以下操作： 看硬件设备，网卡有没有问题，还有交换机和路由器是否死机</p>
<p>  查看网卡驱动是否有问题</p>
<p> 打开设备管理器查看网卡驱动是否有感叹号（右键我的电脑，选择管理，选择设备管理器）</p>
<p><em><strong>*方法2：查看电脑右下角的网络连接属性是否被人为修改过*</strong></em></p>
<p>  \1. 看看右下角网络标识状态，是否有连接上，是否有提示IP冲突</p>
<p>  \2. 查看网卡是否被禁用了( 打开网络和共享中心，更改适配器设置)</p>
<p>  \3. 查看DHCP是否是自动分配，也可以手动输入一个IP地址子、网掩码和网关进行测试</p>
<p><em><strong>*方法3：通过ping 和telnet命令进行测试*</strong></em></p>
<p>  \1. ping <a target="_blank" rel="noopener" href="https://www.baidu.com/s?wd=127.0.0.1&tn=SE_PcZhidaonwhc_ngpagmjz&rsv_dl=gh_pc_zhidao">127.0.0.1</a></p>
<p>​    作用：测试<a target="_blank" rel="noopener" href="https://www.baidu.com/s?wd=TCP/IP%E5%8D%8F%E8%AE%AE&tn=SE_PcZhidaonwhc_ngpagmjz&rsv_dl=gh_pc_zhidao">TCP/IP协议</a>工作情况<br>​    错误：重新安装<a target="_blank" rel="noopener" href="https://www.baidu.com/s?wd=TCP/IP%E5%8D%8F%E8%AE%AE&tn=SE_PcZhidaonwhc_ngpagmjz&rsv_dl=gh_pc_zhidao">TCP/IP协议</a></p>
<p>  \2. ping 本机IP/同网段地址</p>
<p>​    作用：如果你的IP地址是动态获取，可测试本机到<a target="_blank" rel="noopener" href="https://www.baidu.com/s?wd=%E7%BD%91%E7%BB%9C%E4%BA%A4%E6%8D%A2%E6%9C%BA&tn=SE_PcZhidaonwhc_ngpagmjz&rsv_dl=gh_pc_zhidao">网络交换机</a>的连接情况<br>​    错误：检查本机到交换机连接线</p>
<p>  \3. ping 网关IP或局域网主服务器IP</p>
<p>​    作用：测试本机与主服务器连接情况<br>​    错误：检查<a target="_blank" rel="noopener" href="https://www.baidu.com/s?wd=%E4%B8%AD%E5%BF%83%E4%BA%A4%E6%8D%A2%E6%9C%BA&tn=SE_PcZhidaonwhc_ngpagmjz&rsv_dl=gh_pc_zhidao">中心交换机</a>端口是否拥塞（需要与网管联系）</p>
<p>  4.</p>
<p>​    4.1 ping 外网网站域名，看是否能够访问外网</p>
<p>​       Ping <a target="_blank" rel="noopener" href="https://blog.csdn.net/delu2016/article/details/www.baidu.com">www.baidu.com</a> </p>
<p>​    \4. 2. ping 外网DNS服务器，看DNS是否解析</p>
<p>​       ping 223.6.6.6  [阿里云DNS服务器地址]</p>
<p>​    4.3. 使用telnet命令，查看外网网站的web服务器端口是否正常开放</p>
<p>​       telnet <a target="_blank" rel="noopener" href="https://blog.csdn.net/delu2016/article/details/www.baidu.com">www.baidu.com</a> 80</p>
<h2 id="九、人工智能、机器学习、神经网络、深度学习的关系"><a href="#九、人工智能、机器学习、神经网络、深度学习的关系" class="headerlink" title="九、人工智能、机器学习、神经网络、深度学习的关系"></a>九、人工智能、机器学习、神经网络、深度学习的关系</h2><p>机器学习（machine learning）可以简单的理解为实现人工智能的核心方法。他不是一个单一的方法，而是众多算法的合集。没错，人工智能的核心就是由各种算法作为支撑的。不过，现在的机器学习更容易理解成，简单的半人工智能算法，比如我们在逛某宝的时候，总是会有栏目推荐各种商品，或者你浏览了某些商品后，你会发现首页连默认搜索词都变成了你浏览的商品的关键词，这里面就融合了基于机器学习的推荐算法，而且在后台还为用户画像，更加准确的预测你想要购买的商品。其实这样的技术实现背后还是有一定问题的，比如你的隐私，如果你被预测的很准确，那你还有什么隐私可言，你所有的操作都可能悄悄的出卖了你。</p>
<p>神经网络（Neural Network）简单说就是机器学习众多算法中的一类，设计的时候就是模仿人脑的处理方式，希望其可以按人类大脑的逻辑运行（尽管目前来说对人脑的研究仍不够透彻）。神经网络已经有很多年的历史，但现在基本很少听到了。饮鹿网（innov100）产业研究员认为神经网络可以简单的分为单层，双层，以及多层网络。神经网络在之前有非常多的问题，层数无法深入过多，有太多的参数需要调节，样本数据量过小等问题。总之，其之前是一门并不被看好的技术。直到2006年，Hinton在《Science》和相关期刊上发表了论文，首次提出了“深度信念网络”的概念。</p>
<p>深度学习（Deep Learning）其实算是神经网络的延伸，从概念被提出，逐渐的在人工智能领域大显身手。尤其是在2012年，其在图像识别领域获得惊人的成绩。和神经网络一样，深度学习也是一个算法的集合，只不过这里的算法都是基于多层神经网络的新的算法。他是一种新的算法和结构，新的网络结构中最著名的就是CNN，它解决了传统较深的网络参数太多，很难训练的问题，使用了“局部感受野”和“权植共享”的概念，大大减少了网络参数的数量。关键是这种结构确实很符合视觉类任务在人脑上的工作原理。新的方法就多了：新的激活函数：ReLU，新的权重初始化方法（逐层初始化，XAVIER等），新的损失函数，新的防止过拟合方法（Dropout, BN等）。这些方面主要都是为了解决传统的多层神经网络的一些不足：梯度消失，过拟合等。</p>
<p>人工智能 &gt; 机器学习 &gt; 深度学习。</p>

      
    </div>
    <footer class="article-footer">
      <a data-url="https://renshengdian.gitee.io/renshengdian/2021/12/02/%E4%B8%AD%E7%A7%91%E8%BE%BE/" data-id="ckwp2cvnm000a5cunc9k94bey" data-title="" class="article-share-link">Share</a>
      
      
      
    </footer>
  </div>
  
    
<nav id="article-nav">
  
  
    <a href="/renshengdian/2021/11/17/Mybatis/" id="article-nav-older" class="article-nav-link-wrap">
      <strong class="article-nav-caption">Older</strong>
      <div class="article-nav-title"></div>
    </a>
  
</nav>

  
</article>


</section>
        
          <aside id="sidebar">
  
    

  
    
  <div class="widget-wrap">
    <h3 class="widget-title">Tags</h3>
    <div class="widget">
      <ul class="tag-list" itemprop="keywords"><li class="tag-list-item"><a class="tag-list-link" href="/renshengdian/tags/ide/" rel="tag">ide</a></li><li class="tag-list-item"><a class="tag-list-link" href="/renshengdian/tags/jdk/" rel="tag">jdk</a></li><li class="tag-list-item"><a class="tag-list-link" href="/renshengdian/tags/mysql/" rel="tag">mysql</a></li><li class="tag-list-item"><a class="tag-list-link" href="/renshengdian/tags/tomcat/" rel="tag">tomcat</a></li></ul>
    </div>
  </div>


  
    
  <div class="widget-wrap">
    <h3 class="widget-title">Tag Cloud</h3>
    <div class="widget tagcloud">
      <a href="/renshengdian/tags/ide/" style="font-size: 10px;">ide</a> <a href="/renshengdian/tags/jdk/" style="font-size: 20px;">jdk</a> <a href="/renshengdian/tags/mysql/" style="font-size: 10px;">mysql</a> <a href="/renshengdian/tags/tomcat/" style="font-size: 10px;">tomcat</a>
    </div>
  </div>

  
    
  <div class="widget-wrap">
    <h3 class="widget-title">Archives</h3>
    <div class="widget">
      <ul class="archive-list"><li class="archive-list-item"><a class="archive-list-link" href="/renshengdian/archives/2021/12/">December 2021</a></li><li class="archive-list-item"><a class="archive-list-link" href="/renshengdian/archives/2021/11/">November 2021</a></li><li class="archive-list-item"><a class="archive-list-link" href="/renshengdian/archives/2021/10/">October 2021</a></li></ul>
    </div>
  </div>


  
    
  <div class="widget-wrap">
    <h3 class="widget-title">Recent Posts</h3>
    <div class="widget">
      <ul>
        
          <li>
            <a href="/renshengdian/2021/12/02/%E4%B8%AD%E7%A7%91%E8%BE%BE/">(no title)</a>
          </li>
        
          <li>
            <a href="/renshengdian/2021/11/17/Mybatis/">(no title)</a>
          </li>
        
          <li>
            <a href="/renshengdian/2021/11/05/ide%E7%A4%BE%E5%8C%BA%E7%89%88%E9%80%82%E9%85%8D%E4%B8%8D%E4%BA%86tomcat/">ide社区版适配不了tomcat</a>
          </li>
        
          <li>
            <a href="/renshengdian/2021/11/01/ide/">ide</a>
          </li>
        
          <li>
            <a href="/renshengdian/2021/11/01/jdk/">jdk</a>
          </li>
        
      </ul>
    </div>
  </div>

  
</aside>
        
      </div>
      <footer id="footer">
  
  <div class="outer">
    <div id="footer-info" class="inner">
      
      &copy; 2021 John Doe<br>
      Powered by <a href="https://hexo.io/" target="_blank">Hexo</a>
    </div>
  </div>
</footer>

    </div>
    <nav id="mobile-nav">
  
    <a href="/renshengdian/" class="mobile-nav-link">Home</a>
  
    <a href="/renshengdian/archives" class="mobile-nav-link">Archives</a>
  
</nav>
    


<script src="/renshengdian/js/jquery-3.4.1.min.js"></script>



  
<script src="/renshengdian/fancybox/jquery.fancybox.min.js"></script>




<script src="/renshengdian/js/script.js"></script>





  </div>
</body>
</html>